<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ page import="com.esurvey.core.*" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.sql.Date" %>
<HTML>
<HEAD>
	<TITLE>eSurvey - Visualizaci&oacute;n de resultados de encuestas</TITLE>
	<LINK href="styles/general.css" type="text/css" rel="stylesheet">
	<LINK href="styles/userResultsSurvey.css" type="text/css" rel="stylesheet">
	<SCRIPT src="jquery/jquery.js" type="text/javascript"></SCRIPT>
	<SCRIPT src="js/global.js" type="text/javascript"></SCRIPT>
</HEAD>
<%
if ((session.getAttribute("kind") == "admin") && (request.getParameter("idSurvey") != null)) {
	try {
		//cargamos toda la información del usuario que se ha logueado
		String login = session.getAttribute("username").toString();
		User user = eSurveyPersistence.loadUser(login);

		//cargamos toda la información de la encuesta seleccionada
		int idSurvey = Integer.parseInt((String) request.getParameter("idSurvey"));
		Survey s = eSurveyPersistence.loadSurvey(idSurvey);

		//comprobamos que la encuesta recibida por parámetro exista
		if (s != null) {
			//comprobamos que la encuesta seleccionada pertenezca al usuario logueado (si no es un 'admin'
			//el usuario logueado, ya que éste puede ver todas las encuestas)
			if ((s.getIdOwner() == user.getId()) || (session.getAttribute("kind") == "admin")) {
%>
<BODY>
<DIV id="general">
	<DIV id="header">
		<%@ include file="header.jsp" %>
	</DIV>
	<DIV id="content">
		<DIV id="main">
			<DIV class="pageTitle">
				<H1>Visualizaci&oacute;n de los resultados de la encuesta '<%= s.getId() %>'</H1>
				<SPAN class="creationDate">(Creada el <%= s.getCreationDateToString() %> por <%= user.getName()+" "+user.getSurname() %>)</SPAN>
			</DIV>
			<DIV class="returnLink">
				<% if(session.getAttribute("kind") == "admin") { %>
					<a href="viewUserSurveys.jsp?idUser=<%= user.getId() %>" class="returnLink">Volver al men&uacute; del encuestador</a>
				<% } else { %>
					<a href="userMySurveys.jsp" class="returnLink">Volver al men&uacute; principal</a>
				<% } %>
			</DIV>
			<DIV class="filasHeader">
				<LABEL class="labelTitle">
					Asunto:
				</LABEL>
				<%
					out.println("<LABEL class='labelValue'>"+s.getSubject()+"</LABEL>");
				%>
				<LABEL class="labelTitle">
					Fecha de vencimiento:
				</LABEL>
				<%
					out.println("<LABEL class='labelValue'>"+s.getDueDateToString()+"</LABEL>");
				%>
			</DIV>
			<DIV class="filasHeader">
				<LABEL class="labelTitle">
					Tipo de encuesta:
				</LABEL>
				<%
					out.println("<LABEL class='labelValue'>"+s.getKindToString()+"</LABEL>");
				%>
				<LABEL class="labelTitle">
					Categor&iacute;a:
				</LABEL>
				<%
					Category c = eSurveyPersistence.loadCategory(s.getIdCategory());
					out.println("<LABEL class='labelValue'>"+c.getName()+"</LABEL>");
				%>
				<LABEL class="labelTitle">
					An&oacute;nima:
				</LABEL>
				<%
					if (s.isAnonymous()) {
						out.println("<LABEL class='labelValue'>S&iacute;</LABEL>");
					} else {
						out.println("<LABEL class='labelValue'>No</LABEL>");
					}
				%>
			</DIV>
			<DIV class="filasHeader">
				<LABEL class="labelTitle">
					Encuestados:
				</LABEL>
				<%
					int respondidas = eSurveyPersistence.numberUsersResponsed(idSurvey);
					out.println("<LABEL class='labelValue'>"+respondidas+"</LABEL>");
				%>
				<LABEL class="labelTitle">
					Fecha &uacute;ltima respuesta:
				</LABEL>
				<%
					out.println("<LABEL class='labelValue'>"+eSurveyPersistence.lastResponseDate(idSurvey)+"</LABEL>");
				%>
			</DIV>
			<H2>Preguntas:</H2>
			<DIV ID="contentQuestions">
			<%
				int i=1;
				for (Question q: s.getQuestions()) {
					if (q.getKindToString().toUpperCase().equals("RESPUESTA ABIERTA")) {
						out.println("<DIV class='questionAnswers'>");
							out.println("<DIV>");
								if (i == 1) {
									out.println("<LABEL class='labelTitle question questionFirst'> Q"+i+": "+q.getQuestion()+"</LABEL>");
								} else {
									out.println("<LABEL class='labelTitle question'> Q"+i+": "+q.getQuestion()+"</LABEL>");
								}
							out.println("</DIV>");
							out.println("<DIV>");
								ArrayList<Result> answers = eSurveyPersistence.loadOpenAnswerResults(q.getAnswers().get(0).getId());
								for (Result answer: answers) {
									//cargamos los datos del visitante que ha realizado la respuesta
									Visitor v = eSurveyPersistence.loadVisitor(answer.getIdVisitor());

									out.println("<DIV class='answer'>");
										out.println("<LABEL class='labelValue answerTitle'>"+v.getName()+": ");
										out.println("<LABEL class='labelValue answerResult'>"+answer.getValue()+"</LABEL>");
									out.println("</DIV>");
								}
							out.println("</DIV>");
						out.println("</DIV>");
						i++;
					} else if ((q.getKindToString().toUpperCase().equals("MONORESPUESTA")) || (q.getKindToString().toUpperCase().equals("MULTIRESPUESTA"))) {
						out.println("<DIV class='questionAnswers'>");
							out.println("<DIV>");
								if (i == 1) {
									out.println("<LABEL class='labelTitle question questionFirst'> Q"+i+": "+q.getQuestion()+"</LABEL>");
								} else {
									out.println("<LABEL class='labelTitle question'> Q"+i+": "+q.getQuestion()+"</LABEL>");
								}
							out.println("</DIV>");
							out.println("<DIV>");
							for (Answer a: q.getAnswers()) {
								ArrayList<Result> answers = eSurveyPersistence.loadOpenAnswerResults(a.getId());

								out.println("<DIV class='answer'>");
									out.println("<LABEL class='labelValue answerTitle'>"+a.getAnswer()+": ");
									out.println("<LABEL class='labelValue answerResult'>"+answers.size()+" ("+(answers.size()*100)/respondidas+"%)"+"</LABEL>");
								out.println("</DIV>");
							}
							out.println("</DIV>");
						out.println("</DIV>");
						i++;
					}
				}
			%>
			</DIV>
		</DIV>
		<DIV id="nav">
			<DIV class="tabs">
				<% if (session.getAttribute("kind") == "user") { %>
					<%@ include file="pollsterTabs.html" %>
				<% } else if (session.getAttribute("kind") == "admin") { %>
					<%@ include file="adminTabs.html" %>
				<% } %>
			</DIV>
		</DIV>
	</DIV>
	<DIV id="footer">
		<%@ include file="footer.jsp" %>
	</DIV>
</DIV>
</BODY>
<%
			} else {
			response.sendRedirect("login.jsp");
			}
		} else {
			response.sendRedirect("login.jsp");
		}
	} catch (Exception e) {
		response.sendRedirect("error.jsp?exception="+e);
	}
} else {
		response.sendRedirect("login.jsp");
}
%>
</HTML>
